#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <pthread.h>

static void *thr_job(void *s);

int main(void)
{
	pthread_t tid;
	int err;
	int i = 0;

	err = pthread_create(&tid, NULL, thr_job, NULL);
	if (err) {
		fprintf(stderr, "pthread_create():%s", strerror(err));
		exit(1);
	}

	while (i < 10) {
		write(1, "*", 1);
		sleep(1);
		i ++;
	}
	
	// 等待新线程终止
	pthread_join(tid, NULL);

	return 0;
}

// 线程独立执行的函数
static void *thr_job(void *s)
{
	int i;

	i = 0;
	while (i < 20) {
		write(1, "!", 1);
		sleep(1);
		i++;
	}
	// return (void *)0; // 从启动例程返回
	pthread_exit((void *)0);
}



